package com.czmh.etc.onlinepubsys.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 库存信息表 EtcStock 
 * @author yxyt_自动生成
 * @email 
 * @date 2020-09-05 10:49:35
 */
 @ApiModel(value="EtcStock", description="库存信息表")
public class EtcStock implements Serializable {

	private static final long serialVersionUID = 1L;
	
		
	/** ID **/
	@ApiModelProperty(value = "ID")
	private String id;
		
	/** ETC设备ID,关联t_etc_device.id **/
	@ApiModelProperty(value = "ETC设备ID,关联t_etc_device.id")
	private String etcDeviceId;
		
	/** ETC设备编码,关联t_etc_device.obu_device_sn,用于业务查询 **/
	@ApiModelProperty(value = "ETC设备编码,关联t_etc_device.obu_device_sn,用于业务查询")
	private String etcObuDeviceSn;
		
	/** 客户ID,关联t_etc_device.id **/
	@ApiModelProperty(value = "客户ID,关联t_etc_device.id")
	private String customId;
		
	/** 上级客户ID,关联t_etc_device.id **/
	@ApiModelProperty(value = "上级客户ID,关联t_etc_device.id")
	private String parentCustomId;
		
	/** OBU设备发货时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "OBU设备发货时间")
	private Date deliveryTime;

	/** 开始发货时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "开始发货时间")
	private Date startDeliveryTime;

	/** 结束发货时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "结束发货时间")
	private Date endDeliveryTime;

	/** 客户确认收货时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "客户确认收货时间")
	private Date confirmTime;

	/** OBU设备发货状态 0.未确认 1.未发货 2.已发货 3.已确认 **/
	@ApiModelProperty(value = "OBU设备发货状态 0.未确认 1.未发货 2.已发货 3.已确认 4.退货")
	private Integer deliveryStatus;
		
	/** 入库时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "入库时间")
	private Date storageTime;
		
	/** OBU设备结算状态 0.未结算 1.已结算 **/
	@ApiModelProperty(value = "OBU设备结算状态 0.未结算 1.已结算")
	private Integer settlementStatus;
		
	/** OBU设备结算时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "OBU设备结算时间")
	private Date settlementTime;
		
	/** 进库价 **/
	@ApiModelProperty(value = "进库价")
	private BigDecimal stockMoney;
		
	/** 销售价 **/
	@ApiModelProperty(value = "销售价")
	private BigDecimal saleMoney;

	/** 快递公司 **/
	@ApiModelProperty(value = "快递公司")
	private String expCompany;

	/** 快递单号 **/
	@ApiModelProperty(value = "快递单号")
	private String expSn;
		
	/** 备注 **/
	@ApiModelProperty(value = "备注")
	private String remark;
		
	/** 0.未删除 1.删除 **/
	@ApiModelProperty(value = "0.未删除 1.删除")
	private Integer deleteFlag;
		
	/** 录入员ID,关联t_sys_user.id **/
	@ApiModelProperty(value = "录入员ID,关联t_sys_user.id")
	private String createUserId;
		
	/** 创建时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "创建时间")
	private Date createTime;
		
	/** 更新人ID,关联t_sys_user.id **/
	@ApiModelProperty(value = "更新人ID,关联t_sys_user.id")
	private String updatedUserId;
		
	/** 更新时间 **/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
	@ApiModelProperty(value = "更新时间")
	private Date updatedTime;

	@ApiModelProperty(value = "OBU设备对象")
	private EtcDevice etcDeviceDto;

	/** 收款方式，0全收，1代收 **/
	@ApiModelProperty(value = "收款方式，0全收，1代收")
	private Integer payType;

	public Integer getPayType() {
		return payType;
	}

	public void setPayType(Integer payType) {
		this.payType = payType;
	}
	public Date getStartDeliveryTime() {
		return startDeliveryTime;
	}

	public void setStartDeliveryTime(Date startDeliveryTime) {
		this.startDeliveryTime = startDeliveryTime;
	}

	public Date getEndDeliveryTime() {
		return endDeliveryTime;
	}

	public void setEndDeliveryTime(Date endDeliveryTime) {
		this.endDeliveryTime = endDeliveryTime;
	}

	public Date getConfirmTime() {
		return confirmTime;
	}

	public void setConfirmTime(Date confirmTime) {
		this.confirmTime = confirmTime;
	}

	public EtcDevice getEtcDeviceDto() {
		return etcDeviceDto;
	}

	public void setEtcDeviceDto(EtcDevice etcDeviceDto) {
		this.etcDeviceDto = etcDeviceDto;
	}

	public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
	 
			
	public String getEtcDeviceId() {
        return etcDeviceId;
    }

    public void setEtcDeviceId(String etcDeviceId) {
        this.etcDeviceId = etcDeviceId;
    }
	 
			
	public String getEtcObuDeviceSn() {
        return etcObuDeviceSn;
    }

    public void setEtcObuDeviceSn(String etcObuDeviceSn) {
        this.etcObuDeviceSn = etcObuDeviceSn;
    }
	 
			
	public String getCustomId() {
        return customId;
    }

    public void setCustomId(String customId) {
        this.customId = customId;
    }
	 
			
	public String getParentCustomId() {
        return parentCustomId;
    }

    public void setParentCustomId(String parentCustomId) {
        this.parentCustomId = parentCustomId;
    }
	 
			
	public Date getDeliveryTime() {
        return deliveryTime;
    }

    public void setDeliveryTime(Date deliveryTime) {
        this.deliveryTime = deliveryTime;
    }
	 
			
	public Integer getDeliveryStatus() {
        return deliveryStatus;
    }

    public void setDeliveryStatus(Integer deliveryStatus) {
        this.deliveryStatus = deliveryStatus;
    }
	 
			
	public Date getStorageTime() {
        return storageTime;
    }

    public void setStorageTime(Date storageTime) {
        this.storageTime = storageTime;
    }
	 
			
	public Integer getSettlementStatus() {
        return settlementStatus;
    }

    public void setSettlementStatus(Integer settlementStatus) {
        this.settlementStatus = settlementStatus;
    }
	 
			
	public Date getSettlementTime() {
        return settlementTime;
    }

    public void setSettlementTime(Date settlementTime) {
        this.settlementTime = settlementTime;
    }
	 
			
	public BigDecimal getStockMoney() {
        return stockMoney;
    }

    public void setStockMoney(BigDecimal stockMoney) {
        this.stockMoney = stockMoney;
    }
	 
			
	public BigDecimal getSaleMoney() {
        return saleMoney;
    }

    public void setSaleMoney(BigDecimal saleMoney) {
        this.saleMoney = saleMoney;
    }
	 
			
	public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
	 
			
	public Integer getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Integer deleteFlag) {
        this.deleteFlag = deleteFlag;
    }
	 
			
	public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }
	 
			
	public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
	 
			
	public String getUpdatedUserId() {
        return updatedUserId;
    }

    public void setUpdatedUserId(String updatedUserId) {
        this.updatedUserId = updatedUserId;
    }
	 
			
	public Date getUpdatedTime() {
        return updatedTime;
    }

    public void setUpdatedTime(Date updatedTime) {
        this.updatedTime = updatedTime;
    }

	public String getExpCompany() {
		return expCompany;
	}

	public void setExpCompany(String expCompany) {
		this.expCompany = expCompany;
	}

	public String getExpSn() {
		return expSn;
	}

	public void setExpSn(String expSn) {
		this.expSn = expSn;
	}

	public EtcStock() {
        super();
    }
    
																																																																																												
	public EtcStock(Integer payType, Date confirmTime, String id, String etcDeviceId, String etcObuDeviceSn, String customId, String parentCustomId, Date deliveryTime, Integer deliveryStatus, Date storageTime, Integer settlementStatus, Date settlementTime, BigDecimal stockMoney, BigDecimal saleMoney, String expCompany, String expSn, String remark, Integer deleteFlag, String createUserId, Date createTime, String updatedUserId, Date updatedTime) {
		this.payType = payType;
		this.confirmTime = confirmTime;
		this.id = id;
		this.etcDeviceId = etcDeviceId;
		this.etcObuDeviceSn = etcObuDeviceSn;
		this.customId = customId;
		this.parentCustomId = parentCustomId;
		this.deliveryTime = deliveryTime;
		this.deliveryStatus = deliveryStatus;
		this.storageTime = storageTime;
		this.settlementStatus = settlementStatus;
		this.settlementTime = settlementTime;
		this.stockMoney = stockMoney;
		this.saleMoney = saleMoney;
		this.expCompany = expCompany;
		this.expSn = expSn;
		this.remark = remark;
		this.deleteFlag = deleteFlag;
		this.createUserId = createUserId;
		this.createTime = createTime;
		this.updatedUserId = updatedUserId;
		this.updatedTime = updatedTime;
	}
	
}